﻿using System.ComponentModel.DataAnnotations;
using WMS_MAV.Aubit;

namespace WMS_MAV.DTO.Reportlosses
{
    public class AddReportlossesDto
    {
        /// <summary>
        /// 报损单号
        /// </summary>
        public string? ReportlossesNo { get; set; }
        /// <summary>
        /// 报损类型
        /// </summary>
        public string? ReportlossesType { get; set; }
        /// <summary>
        /// 关联订单号
        /// </summary>
        public string? AssociateNumber { get; set; }
        /// <summary>
        /// 制单人
        /// </summary>
        public string? SingleMaker { get; set; }
        /// <summary>
        /// 制单时间
        /// </summary>
        public DateTime? MakeTime { get; set; }=DateTime.Now;
        /// <summary>
        /// 单据状态
        /// </summary>
        public AuditStatus? DocumentState { get; set; } = AuditStatus.等待审核;
        public string? moveRemark { get; set; }

        public List<ReportProductInfo> ReportProductInfo { get; set; }
    }

    /// <summary>
    /// 报损类型
    /// </summary>
    public enum AuditStatus
    {
        全部 = 0,
        等待审核,
        审核成功,
        审核失败
    }
    public class ReportProductInfo
    {
        public int ReportProductId { get; set; }
        /// <summary>
        /// 产品名称
        /// </summary>
        public string? ProductName { get; set; }
        /// <summary>
        /// 产品编码
        /// </summary>
        public string? ProductNo { get; set; }
        /// <summary>
        /// 规格
        /// </summary>
        public string? ProductSpec { get; set; }
        /// <summary>
        /// 批次
        /// </summary>
        public string? Batch { get; set; }
        /// <summary>
        /// 单价
        /// </summary>
        public string? Price { get; set; }
        /// <summary>
        /// 报损数量
        /// </summary>
        public int? ReportNum { get; set; }
        /// <summary>
        /// 当前库位
        /// </summary>
        public string? BinLocationName { get; set; }
        /// <summary>
        /// 公司Id
        /// </summary>
        public string? officeId { get; set; }
        /// <summary>
        /// 用户Id
        /// </summary>
        public int? userid { get; set; }
        /// <summary>
        /// 报损id
        /// </summary>
        public int? ReportlossesId { get; set; }
    }

}
